gint *natural_width);
static void gtk_widget_real_state_flags_changed (GtkWidget *widget,
GtkStateFlags old_state);
+static void gtk_widget_real_queue_draw_region (GtkWidget *widget,
+ const cairo_region_t *region);
static const GtkWidgetAuxInfo* _gtk_widget_get_aux_info_or_defaults (GtkWidget *widget);
static GtkWidgetAuxInfo* gtk_widget_get_aux_info (GtkWidget *widget,
gboolean create);
klass->adjust_baseline_request = gtk_widget_real_adjust_baseline_request;
klass->adjust_size_allocation = gtk_widget_real_adjust_size_allocation;
klass->adjust_baseline_allocation = gtk_widget_real_adjust_baseline_allocation;
+ klass->queue_draw_region = gtk_widget_real_queue_draw_region;
g_object_class_install_property (gobject_class,
PROP_NAME,
* Draw queueing.
*****************************************/
+static void
+gtk_widget_real_queue_draw_region (GtkWidget *widget,
+ const cairo_region_t *region)
+{
+ GtkWidgetPrivate *priv = widget->priv;
+
+ gdk_window_invalidate_region (priv->window, region, TRUE);
+}
+
/**
* gtk_widget_queue_draw_region:
* @widget: a #GtkWidget
if (!gtk_widget_get_mapped (w))
return;
- gdk_window_invalidate_region (priv->window, region, TRUE);
+ WIDGET_CLASS (widget)->queue_draw_region (widget, region);
}
/**
gint *natural_baseline);
void (* adjust_baseline_allocation) (GtkWidget *widget,
gint *baseline);
+ void (*queue_draw_region) (GtkWidget *widget,
+ const cairo_region_t *region);
/*< private >*/
GtkWidgetClassPrivate *priv;
/* Padding for future expansion */
- void (*_gtk_reserved5) (void);
void (*_gtk_reserved6) (void);
void (*_gtk_reserved7) (void);
};